home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / pp / pp-6.0 / Chans / grey / tgreyin.c < prev    next >
Encoding:
C/C++ Source or Header  |  1991-12-18  |  1.6 KB  |  87 lines

  1. /* tgreyin.c: test */
  2.  
  3. # ifndef lint
  4. static char Rcsid[] = "@(#)$Header: /xtel/pp/pp-beta/Chans/grey/RCS/tgreyin.c,v 6.0 1991/12/18 20:10:19 jpo Rel $";
  5. # endif
  6.  
  7. /*
  8.  * $Header: /xtel/pp/pp-beta/Chans/grey/RCS/tgreyin.c,v 6.0 1991/12/18 20:10:19 jpo Rel $
  9.  *
  10.  * $Log: tgreyin.c,v $
  11.  * Revision 6.0  1991/12/18  20:10:19  jpo
  12.  * Release 6.0
  13.  *
  14.  */
  15.  
  16. #include "util.h"
  17.  
  18. static char    *myname;
  19. static char *host = "uk.co.xtel", *chan = "gb-janet";
  20.  
  21.  
  22. main (argc, argv)
  23. int    argc;
  24. char    **argv;
  25. {
  26.     extern char    *optarg;
  27.     extern int    optind;
  28.     int    opt;
  29.  
  30.     myname = argv[0];
  31.     while((opt = getopt(argc, argv, "c:h:")) != EOF)
  32.         switch (opt) {
  33.             case 'c':
  34.             chan = optarg;
  35.             break;
  36.             case 'h':
  37.             host = optarg;
  38.             break;
  39.             default:
  40.             fprintf (stderr, "Usage: %s\n", myname);
  41.             break;
  42.         }
  43.     argc -= optind;
  44.     argv += optind;
  45.  
  46.     if (argc > 0)
  47.         while (argc --) {
  48.             FILE *fp;
  49.             char *ap = *argv++;
  50.  
  51.             if ((fp = fopen (ap, "r")) == NULL) {
  52.                 fprintf (stderr, "Can't read %s\n", ap);
  53.                 exit (1);
  54.             }
  55.             doit (fp);
  56.             fclose (fp);
  57.         }
  58.     else
  59.         doit (stdin);
  60.     exit (0);
  61. }
  62.  
  63. doit (fp)
  64. FILE *fp;
  65. {
  66.     char *errstr;
  67.     char buf[BUFSIZ];
  68.     int n;
  69.  
  70.     printf ("pp_open(%s,%s)\n", chan, host);
  71.     if (pp_open (chan, host, &errstr) != OK) {
  72.         printf ("FAILED in pp_open: %s\n", errstr);
  73.         return;
  74.     }
  75.     while ((n = fread (buf, 1, sizeof buf, fp)) > 0) {
  76.         printf ("pp_write (0, %*.*s, %d)\n", n, n, buf, n);
  77.         if (pp_write (0, buf, n) != n) {
  78.             printf ("FAILED in pp_write: %s\n", errstr);
  79.             return;
  80.         }
  81.     }
  82.  
  83.     printf ("pp_close (0)\n");
  84.     if (pp_close (0) != OK)
  85.         printf ("FAILED in pp_close: %s\n", errstr);
  86. }
  87.